import Vue from "vue";
import VueRouter from "vue-router";
import Login from "../components/login.vue";
import Home from "../components/home.vue";
import Welcome from "../components/welcome.vue";
import Users from "../components/user/users.vue";
import Rights from "../components/power/rights.vue"
import Roles from "../components/power/roles.vue"
import Cate from "../components/goods/cate.vue"
import Params from "../components/goods/params.vue"
import Goods from "../components/goods/list.vue"
import Add from "../components/goods/add.vue"
import Order from "../components/order/order.vue"
import Report from "../components/report/report.vue"

Vue.use(VueRouter);

const router = new VueRouter({
  routes: [
    { path: "/", redirect: "/login" },
    { path: "/login", component: Login },
    {
      path: "/home",
      component: Home,
      redirect: "/welcome",
      children: [
        { path: "/welcome", component: Welcome },
        { path: "/users", component: Users },
        { path: "/rights", component:Rights},
        { path: "/roles", component:Roles},
        { path: "/categories", component:Cate},
        { path: "/params", component:Params},
        { path: "/goods", component:Goods},
        { path: "/goods/add" , component:Add},
        { path: "/orders" , component:Order},
        { path: "/reports" , component:Report},
      ],
    },
  ],
});

//挂载路由导航
router.beforeEach((to, from, next) => {
  //to 将要访问的路径
  //from 代表从那个路径跳转来
  //next 是一个函数，表示放行 next() next('/login) 强制跳转
  if (to.path === "/login") return next(); //如果访问的是登录页面，直接放行
  const token = window.sessionStorage.getItem("token"); //获取token
  if (!token) return next("/login"); //如果不存在强行跳转到登录界面
  next();
});

export default router;
